package dao

import (
	"time"
)

// 这是 SmsFlashPromotion 的全局公开dao对象，被service层调用!
var SmsFlashPromotionDao = smsFlashPromotionDao{}

// 这是 sms_flash_promotion表 的实体类
type SmsFlashPromotion struct {
	Id         int64     `json:"id"` // 编号
	Title      string    `json:"title"`
	StartDate  time.Time `json:"start_date"`  // 开始日期
	EndDate    time.Time `json:"end_date"`    // 结束日期
	Status     int32     `json:"status"`      // 上下线状态
	CreateTime time.Time `json:"create_time"` // 秒杀时间段名称
}

// 注意:这是 SmsFlashPromotion 的私有dao对象，只能在dao层内使用!
type smsFlashPromotionDao struct {
	Insert       func(arg SmsFlashPromotion) (int64, error)
	UpdateById   func(arg SmsFlashPromotion) (int64, error)
	DeleteById   func(id int64) (int64, error)             `args:"id"`
	SelectById   func(id int64) (SmsFlashPromotion, error) `args:"id"`
	List         func(arg SmsFlashPromotionList) ([]SmsFlashPromotion, error)
	UpdateStatus func(id int64, status int32) (int64, error)        `args:"id,status"`
	GetItem      func(currDate string) ([]SmsFlashPromotion, error) `args:"curr_date"`
}

//根据活动名称分页查询
type SmsFlashPromotionList struct {
	Keyword  string `json:"keyword" form:"keyword"`
	PageNum  int    `json:"page_num" form:"page_num"`
	PageSize int    `json:"page_size" form:"page_size"`
}
